package city.spring.action.model;

public abstract class AbstractActiveOldman<OLDMANS> {

    /**
     * 该老人的唯一Key
     *
     * @return 唯一键值
     */
    public abstract Object getKey();

    /**
     * 该老人的姓名
     *
     * @return 名称
     */
    public abstract String getOldmanName();

    /**
     * 联系方式
     *
     * @return
     */
    public abstract String getTelephone();

    /**
     * 出生日期
     *
     * @return
     */
    public abstract String getBirthday();

    /**
     * 获取原始对象
     *
     * @return 原始对象
     */
    public abstract OLDMANS getObject();

    @Override
    public boolean equals(Object object) {
        if (object instanceof AbstractActiveOldman) {
            AbstractActiveOldman<?> ActiveOldman = (AbstractActiveOldman<?>) object;
            Object key1 = this.getKey();
            Object key2 = ActiveOldman.getKey();
            return key1 != null && key1.equals(key2);
        }
        return false;
    }

}
